package com.lxmes.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lxmes.common.annotation.Excel;
import com.lxmes.common.core.domain.BaseEntity;

/**
 * 出库单据主表对象 cc_chuku_main
 * 
 * @author 王超
 * @date 2022-06-29
 */
public class CcChukuMain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;
    @Excel(name = "出库单号)")
    private String danhao;

    /** 出库日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出库日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date ckDate;

    /** 状态(0 初始化 1.已出库) */
    @Excel(name = "状态(0 初始化 1.已出库)")
    private Long state;

    /** 仓库编号 */
    @Excel(name = "仓库编号")
    private String stockId;

    /** 仓库名称 */
    @Excel(name = "仓库名称")
    private String stockName;

    /** 入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date cukuDate;

    /** 出库类型 */
    @Excel(name = "出库类型")
    private Long type;
    @Excel(name = "出库总数量")
    private BigDecimal totalNum;
    @Excel(name = "出库总价格")
    private BigDecimal totalPrice;


    /** 更新时间 */
    private String beginTime;

    /** 更新时间 */
    private String endTime;


    /** 所属组织 */
    private Long deptId;
    //出库方式 1-原材料 2-产成品
    private String chukuFlag;
    //领料人
    private String llName;
    //车号
    private String carNum;
    //供货日期
    private String ghDate;
    //卸货地址
    private String xhAddr;
    //收货人
    private String shName;
    //收款方式
    private String szFs;
    //订单号
    private String orderId;
    @Excel(name = "客户名称")
    private String cusName;
    private String cusId;
    /** 项目名称 */
    @Excel(name = "项目名称")
    private String orderTitle;
    List<CcChukuDetail> infoList;
    private String  queryParams;
    //结账状态
    private String jzFlag;
    //收回数量
    private BigDecimal hsNum;
    //收回物料号
    private String hsItemCode;
    //收回规格型号
    private String hsSpec;


    public String getJzFlag() {
        return jzFlag;
    }

    public void setJzFlag(String jzFlag) {
        this.jzFlag = jzFlag;
    }

    public String getCusId() {
        return cusId;
    }

    public void setCusId(String cusId) {
        this.cusId = cusId;
    }

    public String getCusName() {
        return cusName;
    }

    public void setCusName(String cusName) {
        this.cusName = cusName;
    }

    public String getOrderTitle() {
        return orderTitle;
    }

    public void setOrderTitle(String orderTitle) {
        this.orderTitle = orderTitle;
    }

    public String getChukuFlag() {
        return chukuFlag;
    }

    public void setChukuFlag(String chukuFlag) {
        this.chukuFlag = chukuFlag;
    }

    public String getLlName() {
        return llName;
    }

    public void setLlName(String llName) {
        this.llName = llName;
    }

    public String getCarNum() {
        return carNum;
    }

    public void setCarNum(String carNum) {
        this.carNum = carNum;
    }

    public String getGhDate() {
        return ghDate;
    }

    public void setGhDate(String ghDate) {
        this.ghDate = ghDate;
    }

    public String getXhAddr() {
        return xhAddr;
    }

    public void setXhAddr(String xhAddr) {
        this.xhAddr = xhAddr;
    }

    public String getShName() {
        return shName;
    }

    public void setShName(String shName) {
        this.shName = shName;
    }

    public String getSzFs() {
        return szFs;
    }

    public void setSzFs(String szFs) {
        this.szFs = szFs;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public String getQueryParams() {
        return queryParams;
    }

    public void setQueryParams(String queryParams) {
        this.queryParams = queryParams;
    }

    public BigDecimal getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(BigDecimal totalNum) {
        this.totalNum = totalNum;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCkDate(Date ckDate) 
    {
        this.ckDate = ckDate;
    }

    public Date getCkDate() 
    {
        return ckDate;
    }
    public void setState(Long state) 
    {
        this.state = state;
    }

    public Long getState() 
    {
        return state;
    }
    public void setStockId(String stockId) 
    {
        this.stockId = stockId;
    }

    public String getStockId() 
    {
        return stockId;
    }
    public void setStockName(String stockName) 
    {
        this.stockName = stockName;
    }

    public String getStockName() 
    {
        return stockName;
    }
    public void setCukuDate(Date cukuDate) 
    {
        this.cukuDate = cukuDate;
    }

    public Date getCukuDate() 
    {
        return cukuDate;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public String getDanhao() {
        return danhao;
    }
    public void setDanhao(String danhao) {
        this.danhao = danhao;
    }

    public List<CcChukuDetail> getInfoList() {
        return infoList;
    }

    public void setInfoList(List<CcChukuDetail> infoList) {
        this.infoList = infoList;
    }

    public String getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(String beginTime) {
        this.beginTime = beginTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public BigDecimal getTotalPrice() {
        return totalPrice;
    }

    public void setTotalPrice(BigDecimal totalPrice) {
        this.totalPrice = totalPrice;
    }

    public BigDecimal getHsNum() {
        return hsNum;
    }

    public void setHsNum(BigDecimal hsNum) {
        this.hsNum = hsNum;
    }

    public String getHsItemCode() {
        return hsItemCode;
    }

    public void setHsItemCode(String hsItemCode) {
        this.hsItemCode = hsItemCode;
    }

    public String getHsSpec() {
        return hsSpec;
    }

    public void setHsSpec(String hsSpec) {
        this.hsSpec = hsSpec;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("ckDate", getCkDate())
            .append("state", getState())
            .append("stockId", getStockId())
            .append("stockName", getStockName())
            .append("cukuDate", getCukuDate())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("type", getType())
            .toString();
    }
}
